export const httpFile = (url, formData, headers, percent, success, fail) => {
    const xhr = new XMLHttpRequest();
   
    // 设置上传事件监听器
    xhr.upload.onprogress = function(event) {
        if (event.lengthComputable) {
            // 上传中，更新进度条&& xhr.status === 200
            var percentComplete = (event.loaded / event.total) * 100;
            // 更新进度条或者显示进度百分比
            percent(percentComplete.toFixed(2))
        }
    };
   
    // 设置请求完成事件监听器
    xhr.onload = function() {
      if (xhr.status === 200) {
        success('文件上传成功')
      } else {
        fail('文件上传失败');
      }
    };
   
    // 设置出错处理
    xhr.onerror = function() {
        fail('请求出错');
    };
   
    // 设置请求的URL和方法
    xhr.open('POST', url, true);
   
    // 设置表单上传的内容类型
    // xhr.setRequestHeader('Content-Type', 'multipart/form-data');
    if(headers) {
        for(let key in headers) {
            xhr.setRequestHeader(key, headers[key])
        }
    }
    // 发送Blob对象或者文件对象
    xhr.send(formData);
}
   